#pragma once

#include "ScriptCompiler/AST/ExpressionNode.h"
class CScriptToken;
class CQuestionColonOperatorNode : public CExpressionNode
{
public:
    CQuestionColonOperatorNode(std::weak_ptr<CScriptFileContext> InFile)
        : CExpressionNode(InFile, EASTNodeType::QuestionColonOperator)
    {
    }


    //left operand
    std::shared_ptr<CExpressionNode> Condition;


    //middle operand
    std::shared_ptr<CExpressionNode> TrueBranch;

    //right operand
    std::shared_ptr<CExpressionNode> FalseBranch;

    
    virtual void DebugPrint(int32_t InDepth) override;

    virtual std::shared_ptr<CScriptToken> GetFirstToken() override;
};